iT邦幫忙

2021 iThome 鐵人賽

DAY 12
0
Modern Web

Vue 3 請你幫我做一個網站好嗎 (っಠ‿ಠ)っ系列 第 12

Day12 - 祖父元件與孫子元件間的傳音入密

  • 分享至 

  • xImage
  •  

今天跟大神 重新認識 Vue.js | Kuro Hsu 跨越層級的傳遞方式 學習祖先元件怎麼傳遞家訓給後代
只要在祖父元件設定 provide(){},並在子孫元件設定 inject:[] 接收器,子孫就可以收到祖先元件的資料了,但我們多加 Vue.computed() 讓祖先元件的資料變更時,同步傳送變更後的新資料給乖兒孫


在祖先元件裡設定 provide()

  data() {
    return {
      grandpaYell: 'grandpa Rooock!'
    }
  },
  provide() {
    return {
      provideYell: Vue.computed(() => this.grandpaYell)
    };
  }

在子孫元件裡設定 inject:[]

    inject: ['provideYell'],

並在子孫元件的 template 裡使用時需要加上 .value

<p>{{ provideYell.value }}</p>

待讀 官方文件:Provide / Inject


祝大家開開心心河河笑,如果上述理解有誤希望能協助提點~感謝大家 (っಠ‿ಠ)っ


上一篇
Day11 - 用 v-model 做父子元件間的雙向綁定
下一篇
Day13 - composition API 初次見面哩賀
系列文
Vue 3 請你幫我做一個網站好嗎 (っಠ‿ಠ)っ19
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言